package com.xinsoft.entity.vo;

import cn.afterturn.easypoi.excel.annotation.Excel;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

@Data
public class ScmOutsourcingContractPageVo {
    /**
     * 主键ID
     */
    @ApiModelProperty(value = "主键ID", notes = "")
    protected Integer id;

    /**
     * 合同日期
     */
    private Date contractDate;

    /**
     * 合同编号
     */
    private String contractCode;

    /**
     * 合同类型
     */
    private Integer contractType;
    private String contractTypeName;

    /**
     * 审核状态
     */
    private Integer auditSign;

    /**
     * 关闭状态(0未关闭/1关闭)
     */
    private Integer doClose;

    /**
     * 供应商id
     */
    private Integer supplierId;
    private String supplierName;

    /**
     * 采购员id
     */
    private Integer purchasePersonId;
    private String purchasePersonName;
    private String purchasePersonDept;


    /**
     * 审批状态 默认0暂存, 1:已提交(审批中), 2:驳回, 3:审批通过
     */
    private Integer approveStatus;
    private String approveStatusName;

    /**
     * 0检验1 不检验
     */
    private Integer isCheck;

    /**
     * 是否限额
     */
    private Integer isQuota;
    /**
     * 是否限额
     */
    private String isQuotaName;

    /**
     * 交货日期
     */
    private Date deliveryDate;

    /**
     * 物料ID
     */
    private Integer materialId;

    /**
     * 物料编码
     */
    @Excel(name = "物料编码",orderNum = "8")
    private String materialNo;

    /**
     * 物料名称
     */
    @Excel(name = "物料名称",orderNum = "9")
    private String materialName;

    /**
     * 规格属性
     */
    @Excel(name = "规格属性",orderNum = "10")
    private String materialSpecific;

    /**
     * 数量
     */
    private BigDecimal num;

    /**
     * 加工数量
     */
    private BigDecimal processNum;

    /**
     * 换算系数
     */
    private BigDecimal convCoefficient;

    /**
     * 计量单位
     */
    private Integer mainUnit;

    /**
     * 计量单位
     */
    @Excel(name = "主单位",orderNum = "12")
    private String mainUnitName;

    /**
     * 辅助单位
     */
    private Integer supportUom;

    /**
     * 辅助单位
     */
    @Excel(name = "辅助单位",orderNum = "14")
    private String supportUomName;

    /**
     * 税率
     */
    private BigDecimal tax;

    /**
     * 不含税单价
     */
    @Excel(name = "不含税单价",orderNum = "16")
    private BigDecimal unitPrice;

    /**
     * 含税单价
     */
    @Excel(name = "含税单价",orderNum = "15")
    private BigDecimal taxUnitPrice;

    /**
     * 不含税总价
     */
    @Excel(name = "不含税总价",orderNum = "16")
    private BigDecimal totalPrice;

    /**
     * 含税总价
     */
    @Excel(name = "含税总价",orderNum = "16")
    private BigDecimal taxTotalPrice;

    /**
     * 税额
     */
    @Excel(name = "税额",orderNum = "16")
    private BigDecimal taxAmount;

    /**
     * 是否行关闭 0-否 1 - 是
     */
    private Integer lineDoClose;

    /**
     * 是否行关闭 0-否 1 - 是
     */
    @Excel(name = "是否行关闭",orderNum = "17")
    private String lineDoCloseName;

    /**
     * 关闭时间
     */
    private Date closeTime;

    /**
     * 关闭原因
     */
    private String closeReason;

    /**
     * 源单主键
     */
    private Integer sourceId;

    /**
     * 源单类型
     */
    private Integer sourceType;

    /**
     * 源单类型
     */
    @Excel(name = "源单类型",orderNum = "0")
    private String sourceTypeName;

    /**
     * 源单编码
     */
    @Excel(name = "源单编码",orderNum = "0")
    private String sourceCode;
}
